1a7d65be5a6ca612e6f5ca51f3b757bd2ac75af3,src/main/java/com/couchbase/client/core/node/locate/QueryLocator.java,QueryLocator,locateAndDispatch,#CouchbaseRequest#List#ClusterConfig#CoreEnvironment#RingBuffer#,37

Before Change


            }
        }

        RetryHelper.retryOrCancel(env, request, responseBuffer);
    }

    protected boolean checkNode(final Node node) {

After Change


    private volatile long counter = 0;

    @Override
    public void locateAndDispatch(CouchbaseRequest request, List<Node> nodes, ClusterConfig config, CoreEnvironment env,
        RingBuffer<ResponseEvent> responseBuffer) {

        nodes = filterNodes(nodes);
        if (nodes.isEmpty()) {
            RetryHelper.retryOrCancel(env, request, responseBuffer);
            return;
        }

        if (request instanceof PrelocatedRequest && ((PrelocatedRequest) request).sendTo() != null) {
            InetAddress target = ((PrelocatedRequest) request).sendTo();
            for (Node node : nodes) {
                if (node.hostname().equals(target)) {
                    node.send(request);
                    return;
                }
            }

            RetryHelper.retryOrCancel(env, request, responseBuffer);
            return;
        }